package stream.basic_data;

/**
 * @CreateBy zhangdingyi
 * @Date 2022-10-14
 * @Content 基本知识，并发的教程
 */
public class Concurrency {

    /**
     * 什么是多线程？
     *  一个程序同时执行多个任务。
     *  通常，每一个任务称为一个线程（thread），它是线程控制的简称
     *  可以同时运行一个以上线程的程序称为多线程程序（multithreaded）
     *
     * 什么是多进程？
     * 在同一刻运行多个程序的能力
     *
     * 多进程与多线程有哪些区别呢？
     * 本质的区别在于每个进程拥有自己的一整套变量，而线程则共享数据
     * 线程更加的轻量、高效、创建、撤销的开销更小
     *
     */

    public static void main(String[] args) throws InterruptedException {
       // 调用Thread.sleep不会创建一个新线程，sleep是Thread类的静态方法，用于暂停当前线程的活动。
        //Thread.sleep(100);

        System.out.println(2 << 1);

        //不要调用Thread类或Runnable对象的run方法。
        //直接调用run方法，只会执行同一个线程中的任务，而不会启动新线程。
        //应该调用Thread.start方法。这个方法将创建一个执行run方法的新线程。
    }
}
